home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
DS-CD ROM 2 1993 August
/
DS CD-ROM 2.Ausgabe (August 1993).iso
/
programm
/
ds0257
/
demo.exe
/
PARMS.DEM
< prev
next >
Wrap
Text File
|
1992-02-16
|
3KB
|
98 lines
; ----------------------------
; PARMS.DEM - Demoprogramm für die Routinen aus PARMS.LIB
; (für den A86)
;
; (c) Bernd Schemmer 1990 - 1992
; Letzter Update: 15.02.1992
;
; Übersetzen:
; A86 PARMS.DEM DEMOS.INC TO PARMS.COM
;
; Hinweis: Die Environment-Variable 'A86' muß den Dateinamen 'MACROS.MAC'
; enthalten und die .LIB-Dateien müssen über die Datei A86.LIB
; erreichbar sein.
;
; ---------------------------
jmp start
logo db 'PARMS.DEM - Demoprogramm für die Routinen aus PARMS.LIB'
db CR,LF
db '-------------------------------------------------------'
db CR,LF,CR,LF
GETLENGTH logo
msg0 db 'Original-Parameter: '
db CR,LF
GETLENGTH msg0
msg1 db CR,LF
db 'Anzahl Parameter: '
count db 'xxx'
db CR,LF
GETLENGTH msg1
msg2 db 'Inhalt der Parameter (''»'' und ''«'' sind nur Trennzeichen zur '
db CR,LF
db ' Anzeige der Länge der Paramter):'
db CR,LF
db CR,LF
GETLENGTH msg2
DefString Parameter,128 ; String-Variable
start:
call ShowLogo ; Logo ausgeben
WRITE_STRING msg0 ; Original-Parameter ausgeben
mov si,080h
lodsb
mov cl,al
xor ch,ch
mov dx,si
mov bx,01
mov ah,040h
int 021h
call ShowCR_LF
call Paramcount ; Anzahl der Parameter ermitteln
xor ah,ah
push ax ; Anzahl Parameter sichern
mov di,offset count ; Anzahl ausgeben
call Konvert_Al_To_Dezstring
WRITE_STRING msg1
pop cx ; CX = Anzahl der Parameter
jcxz >l9 ; keine Parameter angegeben
push cx
WRITE_STRING msg2
pop dx
mov ax,1
; Parameter-Inhalte ausgeben
l0:
push ax,dx
mov di,offset parameter
call paramstr ; Parameter ermitteln
mov dx,di ; Parameter anzeigen
mov cl,[di] ; Parameter wird als String mit Längenbyte
xor ch,ch ; mittelt!
mov b[di],'»' ; Längenbyte überschreiben
add di,cx
mov b[di+1],'«'
inc cx,2
mov ah,040h
mov bx,01
int 021h
; Zeilenvorschub ausgeben
call ShowCR_LF
pop dx,ax
inc ax
cmp ax,dx
jbe l0 ; nächsten Parameter
l9: ; und Programm-Ende
EndProcess 0